home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 May / Macworld (1999-05).dmg / Shareware World / Utilities / Compress / MacZip 1.02 final / do_cmd Example next >
Text File  |  1999-02-06  |  3KB  |  106 lines

  1.  
  2. -- Enter here your Commandline
  3. set CommandLine to "zip -r archive *"
  4.  
  5. try
  6.     tell application "MacZip crypt (FAT)"
  7.         activate
  8.         with timeout of 90000 seconds
  9.             do_cmd CommandLine
  10.         end timeout
  11.         quit
  12.     end tell
  13. on error number ErrorNumber
  14.     beep 1
  15.     activate
  16.     -- unfortunately there is a overlap of the errorcodes
  17.     -- so we need to distinguish between zip and unzip
  18.     if CommandLine starts with "zip" then ¬
  19.         ZipErrorHandler(CommandLine, ErrorNumber)
  20.     if CommandLine starts with "unzip" then ¬
  21.         UnzipErrorHandler(CommandLine, ErrorNumber)
  22. end try
  23.  
  24.  
  25.  
  26.  
  27. on ZipErrorHandler(ErrorMessage, ErrorNumber)
  28.     -- Error return values.  The values 0..4 and 12..18 follow the conventions
  29.     -- of PKZIP.   The values 4..10 are all assigned to "insufficient memory"
  30.     -- by PKZIP, so the codes 5..10 are used here for other purposes. 
  31.     try
  32.         set TempErrNum to ErrorNumber
  33.         if ErrorNumber = 80 then set TempErrNum to 19
  34.         item TempErrNum of {¬
  35.             " unknown ", ¬
  36.             " unexpected end of zip file ", ¬
  37.             " zip file structure error ", ¬
  38.             " out of memory ", ¬
  39.             " internal logic error ", ¬
  40.             " entry too large to split ", ¬
  41.             " invalid comment format ", ¬
  42.             " zip test (-T) failed or out of memory ", ¬
  43.             " user interrupt or termination ", ¬
  44.             " error using a temp file ", ¬
  45.             " read or seek error ", ¬
  46.             " nothing to do ", ¬
  47.             " missing or empty zip file ", ¬
  48.             " error writing to a file ", ¬
  49.             " couldn't open to write ", ¬
  50.             " bad command line ", ¬
  51.             " unknown ", ¬
  52.             " could not open a specified file to read ", ¬
  53.             " user hit [command] + [.] to terminate "}
  54.     on error
  55.         set result to "Unknown Error"
  56.     end try
  57.     display dialog ¬
  58.         "Command failed: " & return & "[" & ErrorMessage & ¬
  59.         "]" & return & "\"" & result & " \"" & return ¬
  60.         & "Result Code: " & ErrorNumber buttons {"Ooops"} default button 1 ¬
  61.         with icon stop
  62.     
  63. end ZipErrorHandler
  64.  
  65.  
  66.  
  67.  
  68. on UnzipErrorHandler(ErrorMessage, ErrorNumber)
  69.     try
  70.         set TempErrNum to ErrorNumber
  71.         if ErrorNumber = 50 then set TempErrNum to 12
  72.         if ErrorNumber = 51 then set TempErrNum to 13
  73.         if ErrorNumber = 80 then set TempErrNum to 14
  74.         if ErrorNumber = 81 then set TempErrNum to 15
  75.         if ErrorNumber = 82 then set TempErrNum to 16
  76.         
  77.         item TempErrNum of {¬
  78.             " warning error ", ¬
  79.             " error in zipfile ", ¬
  80.             " severe error in zipfile ", ¬
  81.             " insufficient memory (during initialization) ", ¬
  82.             " insufficient memory (password failure) ", ¬
  83.             " insufficient memory (file decompression) ", ¬
  84.             " insufficient memory (memory decompression) ", ¬
  85.             " insufficient memory (not yet used) ", ¬
  86.             " zipfile not found ", ¬
  87.             " bad or illegal parameters specified ", ¬
  88.             " no files found ", ¬
  89.             "  disk full ", ¬
  90.             "  unexpected EOF ", ¬
  91.             "  user hit [command] + [.] to terminate ", ¬
  92.             "  no files found: all unsup. compr/encrypt. ", ¬
  93.             "  no files found: all had bad password "}
  94.     on error
  95.         set result to "Unknown Error"
  96.     end try
  97.     display dialog ¬
  98.         "Command failed: " & return & "[" & ErrorMessage & ¬
  99.         "]" & return & "\"" & result & " \"" & return ¬
  100.         & "Result Code: " & ErrorNumber buttons {"Ooops"} default button 1 ¬
  101.         with icon stop
  102. end UnzipErrorHandler
  103.  
  104.  
  105.  
  106.